SMT-Based and Disjunctive Relational Abstract Domains for Static Analysis
نویسنده
چکیده
Abstract Interpretation is a theory of sound approximation of program semantics. In recent decades, it has been widely and successfully applied to the static analysis of computer programs. In this thesis, we will work on abstract domains, one of the key concepts in abstract interpretation, which aim at automatically collecting information about the set of all possible values of the program variables. We will focus, in particularly, on two aspects: the combination with theorem provers and the refinement of existing abstract domains. Satisfiability modulo theories (SMT) solvers are popular theorem provers, which proved to be very powerful tools for checking the satisfiability of first-order logical formulas with respect to some background theories. In the first part of this thesis, we introduce two abstract domains whose elements are logical formulas involving finite conjunctions of affine equalities and finite conjunctions of linear inequalities. These two abstract domains rely on SMT solvers for the computation of transformations and other logical operations. In the second part of this thesis, we present an abstract domain functor whose elements are binary decision trees. It is parameterized by decision nodes which are a set of boolean tests appearing in the programs and by a numerical or symbolic abstract domain whose elements are the leaves. This new binary decision tree abstract domain functor provides a flexible way of adjusting the cost/precision ratio in path-dependent static analysis.
منابع مشابه
Block-Wise Abstract Interpretation by Combining Abstract Domains with SMT
domains with SMT Jiahong Jiang, Liqian Chen, Xueguang Wu, and Ji Wang School of Computer Science, National University of Defense Technology, China State Key Laboratory of High Performance Computing, China {jhjiang,lqchen,xueguangwu,wj}@nudt.edu.cn Abstract. Statement-wise abstract interpretation that calculates the abstract semantics of a program statement by statement, is scalable but may caus...
متن کاملCompositional Optimization of Disjunctive Abstract Interpretations
We define the inverse operation for disjunctive completion, introducing the notion of least disjunctive basis for an abstract domain D: this is the most abstract domain inducing the same disjunctive completion as D. We show that the least disjunctive basis exists in most cases, and study its properties in relation with reduced product of abstract interpretations. The resulting framework is powe...
متن کاملSuccinct Representations for Abstract Interpretation
Abstract interpretation techniques can be made more precise by distinguishing paths inside loops, at the expense of possibly exponential complexity. SMT-solving techniques and sparse representations of paths and sets of paths avoid this pitfall. We improve previously proposed techniques for guided static analysis and the generation of disjunctive invariants by combining them with techniques for...
متن کاملCs - R 9633 1996
In this paper we propose a simple framework based on rst-order logic, for the design and decomposition of abstract domains for static analysis. An assertion language is chosen that speciies the properties of interest, and abstract domains are deened to be suitably chosen sets of assertions. Composition and decomposition of abstract domains is facilitated by their logical speciication in rst-ord...
متن کاملThe Domain of Parametric Hypercubes for Static Analysis of Computer Games Software
Computer Games Software deeply relies on physics simulations, which are particularly demanding to analyze because they manipulate a large amount of interleaving oating point variables. Therefore, this application domain is an interesting workbench to stress the trade-o between accuracy and e ciency of abstract domains for static analysis. In this paper, we introduce Parametric Hypercubes, a nov...
متن کامل